The most important thing when running a business using IT resources is that the system provides the function required to support the business applications at a level of service that renders it efficient. This requires that the transactions are executed in a timely fashion. Typically, when a transaction response time problem occurs, it is experienced by end users first, and IT staff are alerted to the problem after it has already impacted the business. The process of trouble shooting then begins, and the IT resources are examined to discover where the problem lies.
Sophisticated transaction monitoring tools exist, that alert IT staff in real time as soon as transaction response times exceed pre-defined thresholds. This is a major improvement to the typical (previous) scenario, but these tools are not yet prevalent, and there are implications in using these tools. For instance, applications need to be instrumented to call transaction monitor tools for timing the duration of a transaction, and this instrumentation adds to the pathlength of the transaction itself, and therefore slows down the transaction execution. It would be preferable if degraded response time could be detected without using methods that directly impact the execution of the transaction itself.
In a commercial business application, when transactions fail to complete, or are extremely slow, there is invariably a problem with one or more of the IT resources that support the business application (e.g. database, file system, server). Problems in the IT resources that result in the degradation of transaction response time are finite and repeatable. Being able to recognize the conditions that result in service degradation by observing the state of the IT resources would allow for a rapid reaction to problem situations without necessitating a widespread deployment of transaction monitoring and avoiding the pathlength overhead that such monitoring implies.
In the monitoring space of systems management, there are two distinct categories of monitoring: resource monitoring and transaction monitoring. Different techniques are applied to monitor the state and behavior of IT resources than are used to monitor transaction execution performance, and the two disciplines are implemented with different tools and practices. Therefore, although an administrator can have information about the performance of transactions running in the system, and information about how the various IT resources are behaving, it is extremely difficult to put the two together and leverage both sets of data to identify the root cause of observed problems. Thus it is not possible to identify problems that result in poor transaction performance with resource monitoring only.
When looking for existing methods for improving response time of transactions, one can be found on the Web pages of the Microsoft (Microsoft is a trademark of Microsoft Corporation in certain countries) site at the following address:
Http://www.microsoft.com/technet/prodtechnol/sscomm/reskit/rkcapmit.mspx
These pages describe a capacity model for Internet transactions. This method attempts to improve transaction performance by measuring system monitoring parameters to create predictive static curves of resource consumption. Then, transaction response time and throughput are given as input to the model which predicts system resource consumption. If this methods of capacity planning helps in sizing systems for supporting transactions, it does not helps in monitoring, in real time, transaction performances.